# OJ Judger 配置文件

# 默认时间限制（毫秒）
DEFAULT_TIME_LIMIT = 1000

# 默认内存限制（KB）
DEFAULT_MEMORY_LIMIT = 65536

# 最大文件大小限制（字节）
MAX_FILE_SIZE = 100 * 1024 * 1024  # 100MB

# 沙箱目录前缀
SANDBOX_DIR_PREFIX = "oj_sandbox_"

# 支持的编程语言（示例）
SUPPORTED_LANGUAGES = {
    'c': {
        'compile_command': 'gcc -O2 -std=c11 -o {output} {source}',
        'extension': '.c'
    },
    'cpp': {
        'compile_command': 'g++ -O2 -std=c++17 -o {output} {source}',
        'extension': '.cpp'
    },
    'python': {
        'compile_command': None,  # Python不需要编译
        'extension': '.py'
    },
    'java': {
        'compile_command': 'javac {source}',
        'extension': '.java'
    }
}

# 判题结果状态码
JUDGE_RESULTS = {
    'ACCEPTED': 'Accepted',
    'WRONG_ANSWER': 'Wrong Answer',
    'TIME_LIMIT_EXCEEDED': 'Time Limit Exceeded',
    'MEMORY_LIMIT_EXCEEDED': 'Memory Limit Exceeded',
    'RUNTIME_ERROR': 'Runtime Error',
    'COMPILE_ERROR': 'Compile Error',
    'SYSTEM_ERROR': 'System Error'
}
